using System;
using System.Linq;
using System.Data.Linq.Mapping;
using Acme.Northwind.EFDAL;

namespace Acme.Northwind.EFDAL
{
	#region CategoryInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the Category collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Categories")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class CategoryInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the Product entity.
		/// </summary>
		[Association(ThisKey = "CategoryID", OtherKey = "CategoryID")]
		public Acme.Northwind.EFDAL.ProductInclude ProductList { get; private set; }

	}

	#endregion

	#region CustomerCustomerDemoInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the CustomerCustomerDemo collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "CustomerCustomerDemo")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class CustomerCustomerDemoInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the CustomerDemographic entity. (Role: 'customercustomerdemo')
		/// </summary>
		[Association(ThisKey = "CustomerTypeID", OtherKey = "CustomerTypeID")]
		public Acme.Northwind.EFDAL.CustomerDemographicInclude CustomercustomerdemoCustomerDemographic { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Customer entity.
		/// </summary>
		[Association(ThisKey = "CustomerID", OtherKey = "CustomerID")]
		public Acme.Northwind.EFDAL.CustomerInclude Customer { get; private set; }

	}

	#endregion

	#region CustomerDemographicInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the CustomerDemographic collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "CustomerDemographics")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class CustomerDemographicInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the CustomerCustomerDemo entity. (Role: 'customercustomerdemo')
		/// </summary>
		[Association(ThisKey = "CustomerTypeID", OtherKey = "CustomerTypeID")]
		public Acme.Northwind.EFDAL.CustomerCustomerDemoInclude CustomercustomerdemoCustomerCustomerDemoList { get; private set; }

	}

	#endregion

	#region CustomerInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the Customer collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Customers")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class CustomerInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the CustomerCustomerDemo entity.
		/// </summary>
		[Association(ThisKey = "CustomerID", OtherKey = "CustomerID")]
		public Acme.Northwind.EFDAL.CustomerCustomerDemoInclude CustomerCustomerDemoList { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Order entity.
		/// </summary>
		[Association(ThisKey = "CustomerID", OtherKey = "CustomerID")]
		public Acme.Northwind.EFDAL.OrderInclude OrderList { get; private set; }

	}

	#endregion

	#region EmployeeInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the Employee collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Employees")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class EmployeeInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the EmployeeTerritorie entity.
		/// </summary>
		[Association(ThisKey = "EmployeeID", OtherKey = "EmployeeID")]
		public Acme.Northwind.EFDAL.EmployeeTerritorieInclude EmployeeTerritorieList { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Order entity.
		/// </summary>
		[Association(ThisKey = "EmployeeID", OtherKey = "EmployeeID")]
		public Acme.Northwind.EFDAL.OrderInclude OrderList { get; private set; }

	}

	#endregion

	#region EmployeeTerritorieInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the EmployeeTerritorie collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "EmployeeTerritories")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class EmployeeTerritorieInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the Employee entity.
		/// </summary>
		[Association(ThisKey = "EmployeeID", OtherKey = "EmployeeID")]
		public Acme.Northwind.EFDAL.EmployeeInclude Employee { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Territory entity.
		/// </summary>
		[Association(ThisKey = "TerritoryID", OtherKey = "TerritoryID")]
		public Acme.Northwind.EFDAL.TerritoryInclude Territory { get; private set; }

	}

	#endregion

	#region OrderDetailInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the OrderDetail collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Order Details")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class OrderDetailInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the Order entity. (Role: 'order_details_orders')
		/// </summary>
		[Association(ThisKey = "OrderID", OtherKey = "OrderID")]
		public Acme.Northwind.EFDAL.OrderInclude Order_details_ordersOrder { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Product entity. (Role: 'order_details_products')
		/// </summary>
		[Association(ThisKey = "ProductID", OtherKey = "ProductID")]
		public Acme.Northwind.EFDAL.ProductInclude Order_details_productsProduct { get; private set; }

	}

	#endregion

	#region OrderInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the Order collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Orders")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class OrderInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the OrderDetail entity. (Role: 'order_details_orders')
		/// </summary>
		[Association(ThisKey = "OrderID", OtherKey = "OrderID")]
		public Acme.Northwind.EFDAL.OrderDetailInclude Order_details_ordersOrderDetailList { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Customer entity.
		/// </summary>
		[Association(ThisKey = "CustomerID", OtherKey = "CustomerID")]
		public Acme.Northwind.EFDAL.CustomerInclude Customer { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Employee entity.
		/// </summary>
		[Association(ThisKey = "EmployeeID", OtherKey = "EmployeeID")]
		public Acme.Northwind.EFDAL.EmployeeInclude Employee { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Shipper entity.
		/// </summary>
		[Association(ThisKey = "ShipVia", OtherKey = "ShipperID")]
		public Acme.Northwind.EFDAL.ShipperInclude Shipper { get; private set; }

	}

	#endregion

	#region ProductInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the Product collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Products")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class ProductInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the OrderDetail entity. (Role: 'order_details_products')
		/// </summary>
		[Association(ThisKey = "ProductID", OtherKey = "ProductID")]
		public Acme.Northwind.EFDAL.OrderDetailInclude Order_details_productsOrderDetailList { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Category entity.
		/// </summary>
		[Association(ThisKey = "CategoryID", OtherKey = "CategoryID")]
		public Acme.Northwind.EFDAL.CategoryInclude Category { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Supplier entity.
		/// </summary>
		[Association(ThisKey = "SupplierID", OtherKey = "SupplierID")]
		public Acme.Northwind.EFDAL.SupplierInclude Supplier { get; private set; }

	}

	#endregion

	#region RegionInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the Region collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Region")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class RegionInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the Territory entity.
		/// </summary>
		[Association(ThisKey = "RegionID", OtherKey = "RegionID")]
		public Acme.Northwind.EFDAL.TerritoryInclude TerritoryList { get; private set; }

	}

	#endregion

	#region ShipperInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the Shipper collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Shippers")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class ShipperInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the Order entity.
		/// </summary>
		[Association(ThisKey = "ShipperID", OtherKey = "ShipVia")]
		public Acme.Northwind.EFDAL.OrderInclude OrderList { get; private set; }

	}

	#endregion

	#region SupplierInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the Supplier collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Suppliers")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class SupplierInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the Product entity.
		/// </summary>
		[Association(ThisKey = "SupplierID", OtherKey = "SupplierID")]
		public Acme.Northwind.EFDAL.ProductInclude ProductList { get; private set; }

	}

	#endregion

	#region TerritoryInclude

	/// <summary>
	/// This is a helper object for creating LINQ definitions for context includes on the Territory collection.
	/// </summary>
	[Serializable()]
	[Table(Name = "Territories")]
	[System.CodeDom.Compiler.GeneratedCode("nHydrateModelGenerator", "5.0.1.100")]
	public partial class TerritoryInclude : nHydrate.EFCore.DataAccess.IContextInclude
	{
		/// <summary>
		/// This is a mapping of the relationship with the EmployeeTerritorie entity.
		/// </summary>
		[Association(ThisKey = "TerritoryID", OtherKey = "TerritoryID")]
		public Acme.Northwind.EFDAL.EmployeeTerritorieInclude EmployeeTerritorieList { get; private set; }
		/// <summary>
		/// This is a mapping of the relationship with the Region entity.
		/// </summary>
		[Association(ThisKey = "RegionID", OtherKey = "RegionID")]
		public Acme.Northwind.EFDAL.RegionInclude Region { get; private set; }

	}

	#endregion

}
